package com.itzhoun.client;

import com.dtflys.forest.annotation.*;
import com.itzhoun.response.ApiResultResponse;
import com.itzhoun.response.User;
import org.springframework.web.multipart.MultipartFile;

import java.io.File;

/**
 * @author 周楠
 * @Date 2022/07/06/上午 11:46
 */
@BaseRequest(baseURL = "${forestUrl}")
public interface ForestSimpleClient {

    /**
     *
     * get带参请求
     * http://localhost:19124/getName?name =xxx
     *
     * @param name
     * @return
     */
    @Get("/getName")
    String getForestName(@Query("name") String name);

    /**
     * get无参请求
     * @return
     */
    @Get("/helloForest")
    String helloForest();

    /**
     * get有参请求并且带响应体
     * @param name
     * @return
     */
    @Get("/getNameApi")
    ApiResultResponse<String> getNameApi(@Query("name") String name);

    /**
     * post请求并且带自定义响应体
     * @param user
     * @return
     */
    @Post("/postJson")
    ApiResultResponse<User> postJson(@JSONBody User user);


    //================调用远程接口进行文件上传的接口=================

    /**
     * 文件上传
     * @param file
     * @return
     */
    @Post("uploadFile")
    boolean uploadFile(@DataFile(value = "file",partContentType = "image/jpeg") File file);


}
